home *** CD-ROM | disk | FTP | other *** search
/ Internet E-Mail Workshop / Internet E-Mail Workshop.iso / referenc / vga_info / vesa.txt < prev    next >
Text File  |  1994-01-18  |  8KB  |  225 lines

  1. The VESA BIOS interface is a software interface for detection capabilities,
  2. setting modes and setting the bank register.
  3.  
  4. VESA 1.0   VESA Standard #VS
  5. VESA 1.1   VESA Standard #VS900602
  6. VESA 1.2   VESA Standard #VS911022
  7.  
  8. ----------104F00-----------------------------
  9. INT 10 - VESA SuperVGA BIOS - GET SuperVGA INFORMATION
  10.         AX = 4F00h
  11.         ES:DI -> 256-byte buffer for SuperVGA information (see below)
  12. Return: AL = 4Fh function supported
  13.         AH = status
  14.              00h successful
  15.              01h failed
  16.  
  17. Format of SuperVGA information:
  18. Offset  Size      Description
  19.  00h   4 BYTEs    signature ('VESA')
  20.  04h    WORD      VESA version number
  21.  06h    DWORD     pointer to OEM name
  22.  0Ah   4 BYTEs    capabilities
  23.  0Eh    DWORD     pointer to list of supported VESA and OEM video modes
  24.                   Terminated with 0FFFFh.
  25.  12h    WORD      Video memory in 64k blocks
  26.  14h   236 BYTEs  reserved
  27. Note: Some VESA drivers will write more than the expected 256 bytes.
  28. ----------104F01-----------------------------
  29. INT 10 - VESA SuperVGA BIOS - GET SuperVGA MODE INFORMATION
  30.         AX = 4F01h
  31.         CX = SuperVGA video mode
  32.         ES:DI -> 256-byte buffer mode information (see below)
  33. Return: AL = 4Fh function supported
  34.         AH = status
  35.              00h successful
  36.              01h failed
  37.  
  38. Format of mode information:
  39. Offset Size   Description
  40.  00h   WORD   mode attributes
  41.               bit 0: mode supported
  42.               bit 1: optional information available
  43.               bit 2: BIOS output supported
  44.               bit 3: set if color, clear if monochrome
  45.               bit 4: set if graphics mode, clear if text mode
  46.  02h   BYTE   window A attributes
  47.               bit 0: exists
  48.               bit 1: readable
  49.               bit 2: writable
  50.               bits 3-7 reserved
  51.  03h   BYTE   window B attributes (as for window A)
  52.  04h   WORD   window granularity in K
  53.  06h   WORD   window size in K
  54.  08h   WORD   start segment of window A
  55.  0Ah   WORD   start segment of window B
  56.  0Ch   DWORD -> FAR window positioning function (equivalent to AX=4F05h)
  57.  10h   WORD   bytes per scan line
  58. ---remainder is optional for VESA modes, needed for OEM modes---
  59.  12h   WORD   width in pixels
  60.  14h   WORD   height in pixels
  61.  16h   BYTE   width of character cell in pixels
  62.  17h   BYTE   height of character cell in pixels
  63.  18h   BYTE   number of memory planes
  64.  19h   BYTE   number of bits per pixel
  65.  1Ah   BYTE   number of banks
  66.  1Bh   BYTE   memory model type
  67.                  0 Text
  68.                  1 CGA graphics
  69.                  2 Hercules Graphics
  70.                  3 EGA 16 color
  71.                  4 Packed pixels
  72.                  5 Non chain 4 256 color modes
  73.                  6 Direct 15/16/24 bit
  74.                  7 YUV
  75.              8-0Fh Reserved for VESA
  76.           10h-0FFh Reserved for OEM  
  77.  1Ch   BYTE   size of bank in K
  78.  1Dh   BYTE   number of image pages
  79.  1Eh   BYTE   reserved(0)
  80. ------VBE v1.2+ --------------------------
  81.  1Fh   BYTE   Red mask size
  82.  20h   BYTE   Red mask position
  83.  21h   BYTE   Green mask size
  84.  22h   BYTE   Green mask position
  85.  23h   BYTE   Blue mask size
  86.  24h   BYTE   Blue mask position
  87.  25h   BYTE   Reserved mask size
  88.  26h   BYTE   Reserved mask position
  89.  27h   BYTE   Direct Screen mode info
  90.  28h   BYTE   Res(0)  
  91.      
  92. ----------104F02-----------------------------
  93. INT 10 - VESA SuperVGA BIOS - SET SuperVGA VIDEO MODE
  94.         AX = 4F02h
  95.         BX = mode
  96.              bit 15 set means don't clear video memory
  97. Return: AL = 4Fh function supported
  98.         AH = status
  99.              00h successful
  100.              01h failed
  101.  
  102. Values for VESA video mode:
  103.   00h-FFh OEM video modes (see AH=00h)
  104.  100h 640x400x256
  105.  101h 640x480x256
  106.  102h 800x600x16
  107.  103h 800x600x256
  108.  104h 1024x768x16
  109.  105h 1024x768x256
  110.  106h 1280x1024x16
  111.  107h 1280x1024x256
  112.  108h 80x60 text
  113.  109h 132x25 text
  114.  10Ah 132x43 text
  115.  10Bh 132x50 text
  116.  10Ch 132x60 text
  117.  ------------ VBE v1.2+ ------------------
  118.  10Dh 320x200 32k
  119.  10Eh 320x200 64k
  120.  10Fh 320x200 16M
  121.  110h 640x480 32k
  122.  111h 640x480 64k
  123.  112h 640x480 16M
  124.  113h 800x600 32k
  125.  114h 800x600 64k
  126.  115h 800x600 16M
  127.  116h 1024x768 32k
  128.  117h 1024x768 64k
  129.  118h 1024x768 16M
  130.  119h 1280x1024 32k
  131.  11Ah 1280x1024 64k
  132.  11Bh 1280x1024 16M
  133.  
  134. ----------104F03-----------------------------
  135. INT 10 - VESA SuperVGA BIOS - GET CURRENT VIDEO MODE
  136.         AX = 4F03h
  137. Return: AL = 4Fh function supported
  138.         AH = status
  139.              00h successful
  140.              01h failed
  141.         BX = video mode (see AX=4F02h)
  142. ----------104F04-----------------------------
  143. INT 10 - VESA SuperVGA BIOS - SAVE/RESTORE SuperVGA VIDEO STATE
  144.         AX = 4F04h
  145.         DL = subfunction
  146.              00h get state buffer size
  147.                  Return: BX = number of 64-byte blocks needed
  148.              01h save video states
  149.                  ES:BX -> buffer
  150.              02h restore video states
  151.                  ES:BX -> buffer
  152.         CX = flags for states to save/restore
  153.               bit 0: video hardware state
  154.               bit 1: video BIOS data state
  155.               bit 2: video DAC state
  156.               bit 3: SuperVGA state
  157. Return: AL = 4Fh function supported
  158.         AH = status
  159.              00h successful
  160.              01h failed
  161. ----------104F05-----------------------------
  162. INT 10 - VESA SuperVGA BIOS - CPU VIDEO MEMORY CONTROL
  163.         AX = 4F05h
  164.         BH = subfunction
  165.              00h select video memory window
  166.                  DX = window address in video memory (in granularity units)
  167.              01h get video memory window
  168.                  Return: DX = window address in video memory (in gran. units)
  169.         BL = window number
  170.              00h window A
  171.              01h window B
  172. Return: AL = 4Fh function supported
  173.         AH = status
  174.              00h successful
  175.              01h failed
  176. ----------104F06-----------------------------
  177. INT 10 - VESA SuperVGA BIOS 1.1 - GET/SET LOGICAL SCAN LINE LENGTH
  178.         AX = 4F06h
  179.         BL = function
  180.              00h set scan line length
  181.                  CX = desired width in pixels
  182.              01h get scan line length
  183. Return: AL = 4Fh if function supported
  184.         AH = status
  185.              00h successful
  186.              01h failed
  187.         BX = bytes per scan line
  188.         CX = number of pixels per scan line
  189.         DX = maximum number of scan lines
  190. Notes: if the desired width is not achievable, the next larger width will be
  191.        set. The scan line may be wider than the visible area of the screen
  192.        this function is valid in text modes, provided that values are
  193.        multiplied by the character cell width/height
  194. ----------104F07BH00-------------------------
  195. INT 10 - VESA SuperVGA BIOS 1.1 - GET/SET DISPLAY START
  196.         AX = 4F07h
  197.         BH = 00h (reserved)
  198.         BL = 00h set display start
  199.                  CX = leftmost displayed pixel in scan line
  200.                  DX = first displayed scan line
  201.            = 01h get display start
  202.                  Return: BH = 00h
  203.                          CX = leftmost displayed pixel in scan line
  204.                          DX = first displayed scan line
  205. Return: AL = 4Fh if function supported
  206.         AH = status
  207.              00h successful
  208.              01h failed
  209. Note: this function is valid in text modes, provided that values are
  210.       multiplied by the character cell width/height
  211. ----------104F08-----------------------------
  212. INT 10 - VESA SuperVGA BIOS v1.2+ - GET/SET DAC PALETTE CONTROL
  213.         AX = 4F08h
  214.         BL = function
  215.              00h  Set DAC palette width
  216.                   BH = desired number of bits per primary color.
  217.              01h  Get DAC palette width
  218. Return: AL = 4Fh if function supported
  219.         AH = status
  220.         BH = Current number of bits per primary color (6 = Standard VGA)  
  221. ----------104FFF-----------------------------
  222. INT 10 - VESA SuperVGA BIOS - Everex - TURN VESA ON/OFF
  223.         AX = 4FFFh
  224.         DL = new state (00h off, 01h on)
  225.